package com.ecommerce.dal.service;

import java.util.List;

import com.ecommerce.dal.entity.CategoryPhoto;
import com.ecommerce.dal.entity.CompanyPhoto;
import com.ecommerce.dal.entity.ItemPhoto;

public interface IPhotoManagementService {
	/**
	 * @param Long
	 *            itemId
	 */
	public void saveItemPhoto(ItemPhoto itemPhoto);

	/**
	 * @param Long
	 *            itemId
	 * @return List of all photos for this Item
	 */
	public List<ItemPhoto> retrieveItemPhotos(long itemId);

	/**
	 * @param Long
	 *            companyId
	 */
	public void saveCompanyPhoto(CompanyPhoto companyPhoto);

	/**
	 * @return List of all photos for this Company
	 */
	public List<CompanyPhoto> retrieveCompanyPhotos(long companyId);

	/**
	 * @param Long
	 *            categoryId
	 */
	public void saveCategoryPhoto(CategoryPhoto categoryPhoto);

	/**
	 * @param categoryID
	 * @return List of all photos for this Category
	 */
	public List<CategoryPhoto> retrieveCategoryPhotos(long categoryId);
	
	void updatePhotoByCompanyId(CompanyPhoto companyPhoto);
	void updatePhotoByCategoryId(CategoryPhoto categoryPhoto);
	void updatePhotoByItemId(ItemPhoto itemPhoto);
	void deletePhotoByCompanyId(CompanyPhoto companyPhoto);
	void deletePhotoByCategoryId(CategoryPhoto categoryPhoto);
	void deletePhotoByItemId(ItemPhoto itemPhoto);
	

}
